+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
+Mon Jan 7 22:19:32 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
+ problem where were the offset into the image was passed
+ into convert_to_format() wrong.
+
+ * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
+ gdk_x11_drawable_update_picture_clip () before using
+ the picture; allow update_picture_clip() to take a NULL gc
+ to mean no clipping.
+
2002-01-07 Matthias Clasen <matthiasc@poet.de>
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)
gdk_x11_drawable_update_picture_clip (GdkDrawable *drawable,
GdkGC *gc)
{
- GdkGCX11 *gc_private = GDK_GC_X11 (gc);
+ GdkGCX11 *gc_private = gc ? GDK_GC_X11 (gc) : NULL;
GdkDrawableImplX11 *impl = GDK_DRAWABLE_IMPL_X11 (drawable);
Picture picture = gdk_x11_drawable_get_picture (drawable);
- if (gc_private->clip_region)
+ if (gc && gc_private->clip_region)
{
GdkRegionBox *boxes = gc_private->clip_region->rects;
gint n_boxes = gc_private->clip_region->numRects;
image = _gdk_image_get_scratch (width1, height1, 32, &xs0, &ys0);
convert_to_format (src_rgb + y0 * src_rowstride + 4 * x0, src_rowstride,
- image->mem + ys0 * image->bpl + 4 * xs0, image->bpl,
+ image->mem + ys0 * image->bpl + xs0 * image->bpp, image->bpl,
format_type, image->byte_order,
width1, height1);
image = _gdk_image_get_scratch (width1, height1, 32, &xs0, &ys0);
if (!get_shm_pixmap_for_image (xdisplay, image, format, mask_format, &pix, &pict, &mask))
return FALSE;
-
+
convert_to_format (src_rgb + y0 * src_rowstride + 4 * x0, src_rowstride,
- image->mem + ys0 * image->bpl + 4 * xs0, image->bpl,
+ image->mem + ys0 * image->bpl + xs0 * image->bpp, image->bpl,
format_type, image->byte_order,
width1, height1);
return;
}
+ gdk_x11_drawable_update_picture_clip (drawable, gc);
+
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
-#ifdef USE_SHM
+#ifdef USE_SHM
if (use_pixmaps)
{
if (!draw_with_pixmaps (drawable, gc,